Imports System.ComponentModel

Namespace DataTypes
    <Serializable()> _
    Public Class CategoryItem
        Private _CategoryGroupId, _CategoryId, _CategoryShortDescription, _CategoryLongDescription, _ParentCategoryId As String
        Private _SortOrder As Integer
        Private _CreatedBy, _LastUpdatedBy As String
        Private _CreateDate, _LastUpdatedDate As DateTime

        <DataObjectField(False)> _
        Public Property CategoryGroupId() As String
            Get
                Return _CategoryGroupId
            End Get
            Set(ByVal value As String)
                _CategoryGroupId = value
            End Set
        End Property

        <DataObjectField(True)> _
        Public Property CategoryId() As String
            Get
                Return _CategoryId
            End Get
            Set(ByVal value As String)
                _CategoryId = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CategoryShortDescription() As String
            Get
                Return _CategoryShortDescription
            End Get
            Set(ByVal value As String)
                _CategoryShortDescription = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CategoryLongDescription() As String
            Get
                Return _CategoryLongDescription
            End Get
            Set(ByVal value As String)
                _CategoryLongDescription = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property ParentCategoryId() As String
            Get
                Return _ParentCategoryId
            End Get
            Set(ByVal value As String)
                _ParentCategoryId = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property SortOrder() As Integer
            Get
                Return _SortOrder
            End Get
            Set(ByVal value As Integer)
                _SortOrder = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CreatedBy() As String
            Get
                Return _CreatedBy
            End Get
            Set(ByVal value As String)
                _CreatedBy = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CreateDate() As DateTime
            Get
                Return _CreateDate
            End Get
            Set(ByVal value As DateTime)
                _CreateDate = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property LastUpdatedBy() As String
            Get
                Return _LastUpdatedBy
            End Get
            Set(ByVal value As String)
                _LastUpdatedBy = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property LastUpdatedDate() As DateTime
            Get
                Return _LastUpdatedDate
            End Get
            Set(ByVal value As DateTime)
                _LastUpdatedBy = value
            End Set
        End Property
    End Class

    <Serializable()> _
    Public Class CategoryGroupItem
        Private _CategoryGroupId, _CategoryGroupDescription As String
        Private _CreatedBy, _LastUpdatedBy As String
        Private _CreateDate, _LastUpdatedDate As DateTime

        <DataObjectField(True)> _
        Public Property CategoryGroupId() As String
            Get
                Return _CategoryGroupId
            End Get
            Set(ByVal value As String)
                _CategoryGroupId = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CategoryGroupDescription() As String
            Get
                Return _CategoryGroupDescription
            End Get
            Set(ByVal value As String)
                _CategoryGroupDescription = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CreatedBy() As String
            Get
                Return _CreatedBy
            End Get
            Set(ByVal value As String)
                _CreatedBy = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property CreateDate() As DateTime
            Get
                Return _CreateDate
            End Get
            Set(ByVal value As DateTime)
                _CreateDate = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property LastUpdatedBy() As String
            Get
                Return _LastUpdatedBy
            End Get
            Set(ByVal value As String)
                _LastUpdatedBy = value
            End Set
        End Property

        <DataObjectField(False)> _
        Public Property LastUpdatedDate() As DateTime
            Get
                Return _LastUpdatedDate
            End Get
            Set(ByVal value As DateTime)
                _LastUpdatedBy = value
            End Set
        End Property
    End Class
End Namespace